package edu.cueb.wmis.controller;


import edu.cueb.wmis.pojo.Outbill;
import edu.cueb.wmis.pojo.RespBean;
import edu.cueb.wmis.service.IOutbillService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.List;

/**
 * <p>
 *  前端控制器
 * </p>
 *
 * @author liuzizhuo
 * @since 2021-04-19
 */
@RestController
@RequestMapping("/outbill")
@Api("出库：该接口主要实现 管理员在预选概单上点击确认，前端传入单号（管理员手输）和 概单号（orderId 前端拿到的）可以出库，生成出库单同时执行出库操作")
public class OutbillController {

    @Autowired
    private IOutbillService outbillService;
    @ApiOperation("生成出库单")
    @PostMapping("/")
    public RespBean generateOutbill(@RequestBody Outbill outbill){
        if(outbillService.generateOutbill(outbill)){
            return RespBean.success("生成入库单成功！",outbill);
        }else{
            return RespBean.error("生成入库单失败");
        }
    }

    @ApiOperation("查询出库单")
    @GetMapping("/")
    public List<Outbill> selectOutbill(){

        return outbillService.selectOutbill();
    }

    @ApiOperation("根据出库单的id查询这次出库，出库了哪些物品")
    @GetMapping("/{id}")
    public Outbill selectItemByBillId(@PathVariable Integer id){

        return outbillService.selectItemByBillId(id);
    }


}
